package cn.wb.system.controller;

import cn.wb.system.service.SystemdictionarytypeService;
import cn.wb.system.domain.Systemdictionarytype;
import cn.wb.system.query.SystemdictionarytypeQuery;
import cn.wb.base.util.AjaxResult;
import cn.wb.base.util.PageList;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/systemdictionarytype")
public class SystemdictionarytypeController {
	@Autowired
	public SystemdictionarytypeService systemdictionarytypeService;
	
	
	/**
	 * 保存和修改公用的
	 *
	 * @param systemdictionarytype 传递的实体
	 * @return AjaxResult转换结果
	 */
	@PutMapping
	public AjaxResult addOrUpdate(@RequestBody Systemdictionarytype systemdictionarytype) {
		try {
			if (systemdictionarytype.getId() != null) {
				systemdictionarytypeService.update(systemdictionarytype);
			} else {
				systemdictionarytypeService.add(systemdictionarytype);
			}
			return AjaxResult.me().success();
		} catch (Exception e) {
			e.printStackTrace();
			return AjaxResult.me().setMsg("保存失败!!" + e.getMessage());
		}
	}
	
	/**
	 * 删除对象信息
	 *
	 * @param id
	 * @return
	 */
	@DeleteMapping(value = "/{id}")
	public AjaxResult delete(@PathVariable("id") Long id) {
		try {
			systemdictionarytypeService.delete(id);
			return AjaxResult.me().success();
		} catch (Exception e) {
			e.printStackTrace();
			return AjaxResult.me().fail();
		}
	}
	
	/** 获取用户 */
 	@GetMapping("/{id}")
	public Systemdictionarytype get(@PathVariable("id") Long id) {
		return systemdictionarytypeService.findById(id);
	}
	
	
	/**
	 * 查看所有的员工信息
	 *
	 * @return
	 */
	@GetMapping()
	public List<Systemdictionarytype> list() {
		return systemdictionarytypeService.findAll();
	}
	
	
	/**
	 * 分页查询数据
	 * @param query 查询对象
	 * @return PageList 分页对象
	 */
	@PostMapping("/list")
	public PageList<Systemdictionarytype> json(@RequestBody SystemdictionarytypeQuery query) {
		return systemdictionarytypeService.queryByPage(query);
	}
}
